home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 2 / Gold Medal Software Volume 2 (Gold Medal) (1994).iso / os2 / tame310.arj / TAME.DOC < prev    next >
Text File  |  1993-10-10  |  47KB  |  1,044 lines

  1.                                  TAME release 3.1  
  2.  
  3.                               Shareware Documentation
  4.  
  5.                        Copyright 1988-1993 by David G. Thomas
  6. -------------------------------------------------------------------------------
  7.                                     Overview
  8. -------------------------------------------------------------------------------
  9.  
  10. Introduction
  11.  
  12.    Tame is designed to help you get maximum performance from your multitasking
  13.    environment by speeding up the processing of your applications.
  14.  
  15.    TAME works with many MS-DOS based multitasking environments.  In fact,
  16.    there are special hooks in TAME for use with most of the popular
  17.    multitaskers including Windows, OS/2, Windows NT, DESQview, Double Dos,
  18.    Omniview, VM/386 and PC/MOS.
  19.  
  20.  
  21. Installation
  22.  
  23.    The exact procedure to install Tame varies slightly depending on the
  24.    multi-tasker that is being used.  See below for detailed instructions for
  25.    installing Tame in your environment. 
  26.    
  27.    A generic installation that applies to all multi-taskers is as follows.
  28.  
  29.    Copy the distribution files onto the hard drive.  You may find it
  30.    convenient to place the Tame directory in the path or to copy the Tame
  31.    files into a directory that is in the path.  Another option is to copy just
  32.    TAME.EXE into a pathed directory, and set the TAME environment variable to
  33.    point to the directory where the rest of the Tame files are.
  34.  
  35.    Tame should be loaded into each DOS task.  To do this, type the following 
  36.    command line.
  37.  
  38.       TAME /I
  39.  
  40.    Other options may be used to optimize performance if necessary.  I suggest
  41.    you try the following.
  42.  
  43.       TAME /I 9
  44.  
  45.    If this makes the program run noticeably more slowly, try:
  46.  
  47.       TAME /I 5
  48.  
  49.    If this makes the program run noticeably more slowly, try:
  50.  
  51.       TAME /I 1
  52.  
  53.    A complete list of Tame options appears at the end of this document.
  54.  
  55.  
  56. Why do you need TAME?
  57.  
  58.    Using a multitasking environment increases your productivity because you
  59.    can run more than one application at a time.  While you are running a word
  60.    processor in the "foreground", you can calculate a spreadsheet or print a
  61.    report in the "background".  Although you appear to be getting several
  62.    things done at the same time, multitasking can actually slow down your
  63.    system.  This will continue to get worse as you run more applications at
  64.    the same time.
  65.  
  66.    Most DOS applications are designed to run in a single-tasking environment.
  67.    The application acts as if it is the only program running on the computer.
  68.    It spends most of its time waiting for an instruction, and very little
  69.    time carrying out the instruction.
  70.  
  71.    While the application is waiting, it queries the various devices
  72.    (keyboard, mouse, etc.) to see if you have sent an instruction.  Then it
  73.    checks again and again in a continuous cycle.  This constant checking is
  74.    known as "polling". In just a few seconds between key strokes, a program
  75.    may poll the keyboard hundreds or even thousands of times.
  76.  
  77.    All this polling uses a lot of the CPUs processing time.  In a
  78.    single-tasking DOS environment with only one program competing for CPU
  79.    time, polling doesn't affect performance.  There are no other applications
  80.    competing for CPU time.
  81.  
  82.    But when you are multitasking, this constant polling wastes a lot of CPU
  83.    time.  The background program is continually polling while you are trying
  84.    to work in the foreground.  This unnecessary loss of CPU time from your
  85.    foreground program makes it perform much slower.  That's where TAME can
  86.    improve your performance.
  87.  
  88.  
  89. How does TAME work?
  90.  
  91.    TAME re-allocates how the CPU spends its time.  It applies more CPU time
  92.    to active tasks (like printing or spell-checking) and less time to idle
  93.    tasks that are merely polling.  In essence, TAME speeds up your "active"
  94.    work by slowing down your "inactive" work.
  95.  
  96.    TAME monitors what a program is doing.  TAME notices when a program is
  97.    idle and its only activity is polling the keyboard.  After enough polls,
  98.    TAME can see that the program is wasting time and tells the multitasker to
  99.    move on to the next task.  When the multitasker returns to the idle task,
  100.    TAME will be less patient than before and force a task switch as soon as
  101.    the program starts polling again.
  102.  
  103.    When the program does something active -- such as processing keyboard
  104.    input, performing disk I/O or changing the video screen -- TAME redirects
  105.    the CPU's attention to it.  TAME detects the activity and boosts the
  106.    program's priority for about a tenth of a second.  The priority boost
  107.    prevents TAME from causing a task switch during that period of time.
  108.  
  109.    You may configure TAME to go so far as to instruct the multitasker not to
  110.    waste any more time on a background task until it is brought into the
  111.    foreground. Other TAME options may be used to help it correctly identify
  112.    and deal with programs that are wasting your CPU time by polling input
  113.    devices.
  114.  
  115. -------------------------------------------------------------------------------
  116.                               License and Registration
  117. -------------------------------------------------------------------------------
  118.  
  119. You are given a 30 day trial period to evaluate the effectiveness of Tame.  If
  120. you decide to keep it, fill in the registration form (REGISTER.FRM), and send
  121. it with $20 to the following address.
  122.  
  123.    David G. Thomas
  124.    4290 Bells Ferry Road
  125.    Suite 106 Room 576
  126.    Kennesaw, GA 30144-1300
  127.  
  128. If you would like to use a credit card, you may call the following numbers:
  129.  
  130.      (404) 516-0381 FAX
  131.      (404) 516-0759 Voice
  132.  
  133. After receiving the registration fee, I will send you a diskette with
  134. a version of the program that has no delay screens or timeout
  135. period.  It also includes the full printed documentation which is
  136. much more extensive than that provided in this file.
  137.  
  138. NOTE: Checks must be made out to David G. Thomas, and payable in US
  139.       funds.
  140.  
  141. -------------------------------------------------------------------------------
  142.                               Installation
  143. -------------------------------------------------------------------------------
  144.  
  145. Installing TAME
  146.  
  147.    Tame is installed onto the hard drive by uncompressing the Tame archive
  148.    file (TAME310.ZIP).
  149.  
  150.    Once TAME is installed, there are several ways to run it.  With both
  151.    DESQview and Windows 3.x, you may automatically add TAME to each program's
  152.    window description, or you may manually edit each description to run TAME.
  153.    With other multitaskers, you may load TAME at the DOS command line or from
  154.    within a batch file.
  155.  
  156.    The quick start section is a starting point that quickly produces
  157.    excellent results.  You'll effortlessly achieve almost all of TAME's
  158.    potential benefits. When you feel comfortable with TAME, try the advanced
  159.    features to achieve optimal performance of your system.
  160.  
  161.  
  162. Quick Start
  163.  
  164.    Follow the quick start instruction to run TAME with the multitasker you
  165.    are using.  If you use DESQview or Windows 3.x, you should then review the
  166.    advanced setup options that follow the quick start.  When your setup is
  167.    complete, refer to the section on how to test TAME with your applications.
  168.  
  169.  
  170. DESQview Quick Start
  171.  
  172.    To automatically add TAME to DESQview, change to the C:\DV directory.  Now
  173.    run the TAMEDVP update program to add TAME to the selected DVP window
  174.    description.  For example, the following command lines add TAME to the
  175.    default Big DOS (BD) window.
  176.  
  177.       CD \DV
  178.       TAMEDVP BD
  179.  
  180.    TAME will be in effect the next time the window is opened.  Any existing
  181.    BD windows will need to be closed and re-opened for TAME to affect them.
  182.    Continue to run the TAMEDVP program for each DVP window description that
  183.    needs TAME. Note that TAME will automatically add 10K to the memory size
  184.    and modify the program options for the window you specify.  See the
  185.    DESQview Advanced Setup for an explanation of the options that are
  186.    automatically modified by TAMEDVP.
  187.  
  188. Windows 3.x Quick Start
  189.  
  190.    To automatically add TAME to Windows, change to the C:\Window directory.
  191.    Now run the TAMEPIF update program.  This will add TAME to the selected
  192.    PIF window description.  The following command lines add TAME to the
  193.    Window's default window (_DEFAULT).
  194.  
  195.       CD \WINDOWS
  196.       TAMEPIF _DEFAULT
  197.  
  198.    TAME will be in effect the next time the window is opened.  Any existing
  199.    _DEFAULT windows will need to be closed and re-opened for TAME to affect
  200.    them. Continue to run the TAMEPIF program for each PIF window description
  201.    that needs TAME.  Note that TAME will automatically add 10K to the memory
  202.    size and modify the program options for the PIF window you specify.  See
  203.    the Windows Advanced Setup section for an explanation of the options that
  204.    are automatically modified by TAMEPIF.
  205.  
  206.  
  207. Other Multitaskers Quick Start
  208.  
  209.    First, make sure you are running in your multitasker.  Then, load TAME at
  210.    the DOS prompt from within a window (or task).  Note that you may also load
  211.    TAME from within a batch file, which is explained in the Placing TAME in a
  212.    batch file section.
  213.  
  214.    To install the TAME resident (TSR) program that includes the pop-up
  215.    screens, at the DOS prompt from within your multitasker, enter  TAME /I.
  216.    You may also load the smaller version of TAME by entering  TAME /TINY /I.
  217.  
  218.    Now that TAME is active, load the application you want to run under TAME.
  219.    For example, the following commands will load the TAME program that
  220.    includes pop-up screens, and then load Lotus 123.
  221.  
  222.       TAME /I
  223.       123
  224.  
  225.    Repeat these steps for each task you want to run with TAME.  Then test them
  226.    as described in a later section.
  227.  
  228.  
  229. DESQview Advanced Setup
  230.  
  231.    DESQview must be running before your begin.  Press the DESQview system key
  232.    (Default is Alt) to be sure you are at the DESQview menu.  Press
  233.    "OCP" for Open, Change a Program.  From the list, select the program that
  234.    you want to tame.
  235.  
  236.    Examine the Program field to see which program the window runs.  If it is a
  237.    command to run a batch file, then you may load the TAME TSR from within the
  238.    batch file.  (See the section on Placing TAME in a batch file.)  Otherwise,
  239.    you will need to change the DVP information as follows.
  240.  
  241.    Move the name of the program from the Program field to the Parameters
  242.    field. Be sure to enter the program name before any parameters that were
  243.    already in this field.  Enter the TAME /RUN command prior to the program
  244.    name.  Now enter TAME in the Program field.  (Note that the TAMEDVP
  245.    program will automatically do this for you.  If the DESQview "exit to DOS"
  246.    option is set to NO, TAMEDVP will also add the /I option.)
  247.  
  248.    In the Parameters field, you may add any TAME options you want to run with
  249.    this program.  You must place the TAME options prior to the program name.
  250.    The /RUN command must always be the last TAME command on the line, and
  251.    must be entered just before the program name.  For example, the following
  252.    may be placed in the Parameter field to load the small TAME TSR, and then
  253.    run Lotus 123.
  254.  
  255.       /TINY /RUN 123
  256.  
  257.    You need to increase the memory given to the task by 10K if you want to
  258.    use the TAME pop-up screens, or by 2K if you do not need this feature.  If
  259.    you don't specify the /TINY option when you run TAME, the 10K TAME TSR
  260.    will automatically be loaded.  (Note that the TAMEDVP program will
  261.    automatically increase the memory for you.)
  262.  
  263.    You may also want to set the two advanced options for "Run in the
  264.    background" and "Share CPU in foreground" to "Y".  These two settings are
  265.    frequently not used, but should work quite well with TAME.  Press the
  266.    space bar at the Change a Program screen to move to the Advanced Options
  267.    screen.
  268.  
  269.    Repeat these steps for each application you want to run with TAME.  Then
  270.    test them as described in a later section.
  271.  
  272.  
  273. Windows Advanced Setup
  274.  
  275.    Windows must be running before you begin.  Open the PIF editor window and
  276.    edit the PIF file of the window that needs TAME.
  277.  
  278.    Examine the Program Filename field to see which program the window runs.
  279.    If it is a command to run a batch file, then you may load the TAME TSR
  280.    from within the batch file.  (See the section on Placing TAME in a batch
  281.    file.) Otherwise, you will need to change the PIF information as follows.
  282.  
  283.    Move the name of the program from the Program Filename field to the
  284.    Optional Parameters field.  Be sure to enter the program name before any
  285.    parameters that were already in this field.  Enter the TAME /RUN command
  286.    prior to the program name.  Now enter TAME in the Program field.  (Note
  287.    that the TAMEPIF program will automatically do this for you.  If the PIF
  288.    editor option to Close Window on Exit is set to NO, TAMEPIF will also add
  289.    the /I option.)
  290.  
  291.    In the Optional Parameters field, you may add any TAME options you want to
  292.    run with this program.  You must place the TAME options prior to the
  293.    program name. The /RUN command must always be the last TAME command on the
  294.    line, and must be entered just before the program name.  For example, the
  295.    following may be placed in the Optional Parameter field to load the small
  296.    TAME TSR, and then run Lotus 123.
  297.  
  298.       /TINY /RUN 123
  299.  
  300.    You may also need to increase the memory given to the task by 10K if you
  301.    want to use the TAME pop-up screens, or by 2K if you do not need this
  302.    features.  If you don't specify the /TINY option when you run TAME, the
  303.    10K TAME TSR will automatically be loaded.  (Note that the TAMEPIF program
  304.    will automatically increase the memory for you.)
  305.  
  306.    Repeat these steps for each application you want to run with TAME.  Then
  307.    test them as described in a later section.
  308.  
  309.  
  310. Placing TAME in a batch file
  311.  
  312.    Decide which TAME resident (TSR) program you want to use (the default TSR
  313.    includes the pop-up screens, the other does not).  To load the default
  314.    TSR, use the TAME /I command.  To load the smaller version of TAME, use the
  315.    TAME /TINY /I command.  For example, place the following commands in your
  316.    batch file to load TAME and then run Lotus 123.
  317.  
  318.       TAME /I
  319.       123
  320.  
  321. -------------------------------------------------------------------------------
  322.                        Testing TAME with your applications
  323. -------------------------------------------------------------------------------
  324.  
  325. TAME can benefit nearly any program that uses CPU cycles to look for keyboard
  326. input.  The best way to see if a program does this is to run a simple test.
  327. You should test all programs that you use regularly, including word
  328. processors, spreadsheets, editors, DOS shells, and communication programs.
  329.  
  330. The following explains several ways to test a program to see if it needs
  331. TAME. Select the method you want to use.  If TAME appears to be needed, but
  332. appears to have no effect, see Trouble Shooting in Appendix B.
  333.  
  334. 1. Use a stopwatch
  335.  
  336.    This is the best way to measure TAME performance.  Note that other ways to
  337.    test the effectiveness of TAME may be more convenient, but they are
  338.    measuring performance indirectly and may occasionally yield misleading
  339.    results.
  340.  
  341.    First, open a single window (W1) running DOS and make sure no other window
  342.    is open.  If available in your multitasker, set the "Share the CPU" and
  343.    "run in the background" options to Yes.
  344.  
  345.    Now, measure the time required to do a CPU or disk intensive operation.
  346.    Choose any lengthy operation, such as copying a group of files.  Run the
  347.    operation once without timing it so that the effect of other system
  348.    enhancements (such as a disk cache) may be eliminated.  Run the operation
  349.    again and record the time required.  This is the optimal time, since no
  350.    multitasking is taking place.
  351.  
  352.    Now open another window (W2) and run an application that is not tamed.  Be
  353.    sure this window (W2) is also set to "Share the CPU" and to "Run in the
  354.    background".  Switch to the original DOS window (W1) and time how long it
  355.    takes to run the same operation in the foreground.  Then time how long it
  356.    takes the operation (W1) to run in the background with the application
  357.    (W2) in the foreground.  If the original operation (W1) takes longer than
  358.    the optimal time, then the application (W2) is slowing it down.  The
  359.    application (W2) needs TAME.
  360.  
  361.    Note that you should expect a slightly slower time with the application
  362.    running.  But, anything that takes more than 5% longer is not acceptable
  363.    and needs TAME.
  364.  
  365.    Exit the application (W2) and run TAME in that window (W2).  Then run the
  366.    application again in the window (W2) with TAME active.  Switch to the
  367.    original DOS window (W1) and time how long it takes to do the same
  368.    operation in the foreground, and then again in the background.  The timing
  369.    should now be much closer to the original optimal time.  TAME has
  370.    prevented the idle application (W2) from degrading system performance.
  371.  
  372. 2. Use a standard CPU benchmark
  373.  
  374.    This is a variation of the stopwatch method where you use a CPU benchmark
  375.    to time execution of a CPU intensive operation.  Use the same procedure,
  376.    where lower stopwatch timing is equivalent to higher CPU speed ratings.
  377.  
  378.    NOTE: If you use Norton's System Information (SI) program for the
  379.          benchmark, be sure it is version 4.5 or earlier.  The new versions
  380.          of this program are capable of computing nearly the same number
  381.          without regard to whether the system is loaded.  It may also
  382.          erroneously report tamed systems to be slower than systems not
  383.          running TAME.
  384.  
  385. 3. Use the Geiger counter
  386.  
  387.    Another direct method is to run TAME with the /Geiger option.  This method
  388.    will give you an audible indication for the effectiveness of TAME.  To do
  389.    this, make sure no windows are open.  Then open a DOS window and at the
  390.    DOS prompt enter:
  391.  
  392.       TAME /GEIGER
  393.  
  394.    You will immediately hear steady ticking; the Geiger's audible reference
  395.    that the CPU is processing.  Now, open a second window and run the
  396.    application you are testing.  Be sure TAME is not present.  If the ticks
  397.    slow considerably, or if they become sporadic, the application in the
  398.    foreground probably needs TAME.
  399.  
  400.    Now run TAME with the foreground application.  The ticks probably are
  401.    smoother and faster than before.  This means TAME is keeping your
  402.    background task running at nearly full speed, at least while you are not
  403.    actively needing the CPU.
  404.  
  405. 4. Check the visual indicators
  406.  
  407.    The monitor displays visual indicators to check system performance.  To 
  408.    pop-up the monitor, press the hot-key sequence Alt-Ctrl-M.  This hot-key
  409.    will toggle the monitor on and off.  If you are not using pop-up screens,
  410.    load the monitor from the DOS prompt with the TAME /MOnitor command.  The
  411.    monitor appears as a small a box in the upper right corner of the screen.
  412.  
  413.    Four symbols appear in the box from left to right that indicate System
  414.    status, Current task status, Polling status and Task switch status.  The
  415.    status that may appear in each of the four monitor positions indicate:
  416.  
  417.    S  = System status: (?) don't know, (I)dle, (W)orking
  418.  
  419.    C  = Current task: (I)dle, (W)orking, (i)dle switched, (K)ey read
  420.  
  421.    /  = Spinner: continuously turns while the system is polling
  422.  
  423.    .  = Task switch indicator: throbs as TAME causes task switches
  424.  
  425.    System status:  A ? means that the system is awaiting keyboard input, but
  426.                    is not in a polling state.  An I indicates that a program
  427.                    is running, but is currently in an idle state.  A W means
  428.                    that a program is running and is actively processing.
  429.  
  430.    Current task:   
  431.                    Both I and i indicate that the current task is idle, and a
  432.                    W means that there is active processing in the task.  A K
  433.                    means that the task is wait for a key stroke, but the task
  434.                    is not in the polling mode.
  435.  
  436.    Spinner:        While an application is polling, the spinner will
  437.                    constantly turn. When the application is active, the
  438.                    spinner will stop.  For example, the spinner stops when you
  439.                    are at the DOS prompt, or when an application is actively
  440.                    printing, sorting, calculating, etc.
  441.  
  442.    Task switch indicator:  A constant throb means an application is inactive.
  443.                    The throb will stop when the application is active.
  444.  
  445.    Use the spinner and task switch indicator to monitor an application.  When
  446.    a task is idle, the spinner should turn and the task switch indicator
  447.    should throb.  When active processing occurs, both should stop.  If an
  448.    application is inactive and the spinner is turning but the task switch
  449.    indicator does not throb, you need to lower the idle threshold for that
  450.    application.
  451.  
  452. 5. Check the TAME polling statistics
  453.  
  454.    Evaluate whether or not TAME is effective by running the application with
  455.    TAME and then checking the statistics generated with the TAME /Status
  456.    command.
  457.  
  458.    To test the program, TAME must be run in a multitasking window.  At the
  459.    DOS prompt, type the following command line.
  460.  
  461.       TAME /I
  462.  
  463.    Now, run your program in this window and work in it for a short time. Then
  464.    exit normally.  Type the following command line to obtain a summary of
  465.    TAME activity.
  466.  
  467.       TAME /Status
  468.  
  469.    The displayed totals include the number of keyboard polls that the program
  470.    performed.  If this number is small or zero, then TAME may not be needed
  471.    with the application.  On the other extreme, some keyboard-hungry programs
  472.    can generate thousands of keyboard polls in just a few seconds.  In this
  473.    case, the application needs TAME.
  474.  
  475. Applications that are DESQview-aware
  476.  
  477.    Most sophisticated programs poll the keyboard.  A few of these programs
  478.    have made themselves DESQview-aware, meaning that they recognize and work
  479.    with DESQview.  Most are sufficiently DESQview aware to run in a window,
  480.    but still hog the CPU.  These programs need TAME as much as ones that are
  481.    not DESQview-aware.
  482.  
  483.    To be fully DESQview-aware, an application must release its time slice
  484.    while it is polling the keyboard.  TAME is normally not needed when one of
  485.    these fully-aware programs are used in DESQview.
  486.  
  487.    However, only a few programs are fully DESQview-aware.  With the ones that
  488.    are, TAME can transform their DESQview-awareness into Windows-awareness,
  489.    or awareness of any other supported multitasker.  This is done by
  490.    specifying the /DVAWARE option.  When all programs that are run in a
  491.    specific window will be DESQview-aware, you may turn off the options that
  492.    cause automatic recognition of polling programs (except for communication
  493.    programs.  The following command line tells TAME that all the programs
  494.    will be DESQview-aware.
  495.  
  496.       TAME /DVAWARE /NKI /II NONE
  497.  
  498.    It is possible that a program uses DESQview/Topview functions that are not
  499.    supported with TAME.  TAME can fool these programs into thinking they are
  500.    in DESQview, but if they try unsupported functions, they may crash the
  501.    system.  If
  502.  
  503. -------------------------------------------------------------------------------
  504.                         Functional Option Summary
  505. -------------------------------------------------------------------------------
  506.  
  507.    Usage: TAME /option [value] /option {value} ... [] = required, {} = optional
  508.  
  509. Common Options:
  510.  
  511.   /CLeaR
  512.   /Help              {option}
  513.   /Install           [1,5,9]
  514.   /NoMonitor
  515.   /OFf
  516.   /ON
  517.   /RUN               [command_line]
  518.   /SETtings          [1,5,9]
  519.   /Status
  520.   /Uninstall
  521.  
  522. Tuning Options:
  523.  
  524.   /BackGround
  525.   /NoBackGround      [count]
  526.  
  527.   /Boost             [key_boost work_boost]
  528.   /Geiger            {delay time freq spinner}
  529.   /Idle_Indicate     [first rest]
  530.   /Idle_Indicate     [first rest] {POLLS}
  531.   /Idle_Indicate     [Key,Time,PSP,NONE]
  532.   /NoIdle_Indicate   [Key,Time,PSP]
  533.  
  534.   /KeyIdle           [count]
  535.   /NoKeyIdle
  536.  
  537.   /KeyWaitPoll
  538.   /NoKeyWaitPoll
  539.  
  540.   /TaskSwitchREPeat  [count]
  541.  
  542.   /Timer
  543.   /NoTimer
  544.  
  545.   /Work_Indicate     [Com1,Com2,Com3,Com4,IRQn,SERial,PARallel,NONE]
  546.   /Work_Indicate     [work_boost]
  547.   /NoWork_Indicate   [Com1,Com2,Com3,Com4,IRQn,SERial,PARallel]
  548.  
  549. Other Options:
  550.  
  551.   @filename
  552.   /CLONE             [file command_line]
  553.   /DVAware
  554.   /NoDVAware
  555.  
  556.   /Hot_Key           [Monitor,Status key_name]
  557.   /OFf               [ticks]
  558.   /Task_Switch       [OS2,WINdows,DesqView,DoubleDos,OmniView,TopView,
  559.                      VM/386,Key_Read,HaLT] {time_slice}
  560.   /TINY
  561.   /WriteOptions
  562. -------------------------------------------------------------------------------
  563.                        Detailed Option Summary
  564. -------------------------------------------------------------------------------
  565.  
  566. @filename
  567.  
  568.    Tame will load preset command options from the file specified.  These
  569.    options may have been previously placed into the file using the
  570.    /Write_Options option.
  571.  
  572. /BackGround
  573.  
  574.    Turns off the /NoBackGround option.
  575.  
  576. /Boost [key_boost work_boost]
  577.  
  578.    This option is intended to prevent Tame from slowing an application.  It
  579.    will boost the priority of the application for key_boost clock ticks after
  580.    each key press, and work_boost clock ticks after each DOS or video action.
  581.    Both values default to 2.  You may need to decrease the second value to zero
  582.    if Tame does not seem to be effective.  See The Boost Parameter in the
  583.    Advanced Options section for a detailed explanation.
  584.  
  585. /CLeaR
  586.  
  587.    Sets the totals that Tame displays on status screen to zero.  This option
  588.    will clear the totals that appear on both the pop-up status screen and the
  589.    command line status screen.
  590.  
  591. /CLONE [file command_line]
  592.  
  593.    This command will make a special version of the Tame TSR (the TAME-RES.COM
  594.    that does not include the pop-up screens) that has customized default
  595.    parameters, and will automatically run a specific command.  The currently
  596.    active defaults will be placed into the cloned program.  In all cases, the
  597.    /CLONE option should be the only command line option that is specified.
  598.  
  599.    The cloned program is specified with the file value, and should be named
  600.    TAME-xxx where xxx is an abbreviation for the application name
  601.    (TAME-123.COM).  You may optionally specify a command_line to automatically
  602.    run a specific command.  Note that file is the name of the new COM file
  603.    (without the .COM suffix), and command_line contains the full path name of
  604.    the EXE or COM style command that is to be run.
  605.  
  606.    The new TAME-xxx.COM may then be run in place of TAME /I that is used when
  607.    starting a new task.  See the section on Setting default options for a
  608.    detailed explanation.
  609.  
  610. /CPU
  611.  
  612.    This command will calculate a suggested frequency threshold based on the
  613.    speed of your CPU.  Tame sets this threshold to 3.  Unless your application
  614.    runs slower under, you should not change the default frequency threshold.
  615.  
  616. /DVAware
  617.  
  618.    This command allows you to run DESQview-aware programs with multi-taskers
  619.    other than DESQview.  See the section on Applications that are
  620.    DESQview-aware for a detailed explanation.
  621.  
  622. /Geiger {delay time freq spinner}
  623.  
  624.    This option provides audible ticks that sound like a Geiger counter.  The
  625.    ticks speed up when the system is idle, and slow down as other tasks demand
  626.    CPU time.  This is a very useful tool for monitoring the effectiveness of
  627.    Tame.  It allows you to monitor the amount of CPU that an application will
  628.    use both when Tame is loaded and when it is not.
  629.  
  630.    There are some optional parameters that you may specify.  These options will
  631.    vary depending on the speed of the CPU you are using.  When you run the
  632.    Geiger command, it will display the current default values for each
  633.    parameter.
  634.  
  635.    delay     The delay parameter sets the amount of time between each Geiger
  636.              tick.  The default value is based on the speed of the CPU.  When
  637.              you use Geiger for tuning your applications, you will want to use
  638.              the default value for this parameter.
  639.  
  640.              However, you can set the Geiger to use very little CPU when Tame
  641.              is loaded and tuned so you can monitor total system CPU usage.
  642.              But, remember that doing this is not very useful for tuning Tame.
  643.  
  644.              To monitor CPU usage, specify a negative value for delay to set
  645.              the real time between each tick in 1/18 second increments.
  646.              Setting it to -1 will make a tick each 1/18 of a second.  Its only
  647.              value in tuning Tame is in the fact that it will simulate a heavy
  648.              keyboard poller, and may help you adjust the settings.  Setting
  649.              delay to zero will give a tick each time this task gets a time
  650.              slice, but the zero setting requires the Tame TSR to be loaded.
  651.  
  652.    time      This parameter sets the amount of time each tick takes.  The
  653.              default is based on the speed of your CPU, and normally you would
  654.              not want to change it.  You may set time as low as zero and a
  655.              faint tick will still be heard.
  656.  
  657.    frequency This sets the frequency of the ticks in Hertz.  The default for
  658.              this value is 100 Hertz.
  659.  
  660.    spinner   This option will display a spinner on the screen that visually
  661.              supplements the ticking sounds.  You simply specify how often to
  662.              move the spinner relative to the tick sounds; 1 means move it on
  663.              each tick, two means for every other tick, etc.
  664.  
  665. /Help {option}
  666.  
  667.    This command lets you list all of the on-line help for Tame, or only help
  668.    for a specific command or option.  Entering /H or /? provides the complete
  669.    help document, one screen at a time.  To get help on a specific command,
  670.    enter the full command or its abbreviation. For example, /Help HotKey or /H
  671.    HK.
  672.  
  673. /Hot_Key [function key_name]
  674.  
  675.    You may assign the hot key you want to use to display either the Tame pop-up
  676.    status screen or the pop-up monitor.
  677.  
  678.    function  You must enter either Status or Monitor to let Tame know which
  679.              pop-up screen you are assigning a hot key.  If you do not enter a
  680.              key_name, you will be prompted to press the key to assign.
  681.  
  682.    key_name  This is the name of the key you want to assign.  The name of the
  683.              key may normally be derived by its label on the key cap.  The
  684.              following names are valid.
  685.  
  686.              F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, Ins, Del, PgUp, PgDn,
  687.              GrayMinus, GrayPlus, Left, Right, Up, Down, Home, End, TAB, ESC,
  688.              Backspace, Enter, GrayStar, Space, A, B, ...  Z, 0, 1, 2, ...  9
  689.  
  690.           Also, any key may be modified as follows:
  691.  
  692.               Alt-Key
  693.               Ctrl-Key
  694.               Shift-Key
  695.               Alt-Ctrl-Key
  696.  
  697.    For example, the following command line assigns the [Key: Alt-T] key to the
  698.    Tame pop-up status screen.
  699.  
  700.       TAME /HK STATUS ALT-T
  701.  
  702. /Idle_Indicate [first rest]
  703.  
  704.    This option may help you fine-tune Tame.
  705.  
  706.    first This value sets the number of consecutive keyboard polls per clock
  707.          tick that are acceptable before Tame decides that the program is idly
  708.          polling the keyboard.  This number defaults to 3.  If this number is
  709.          too low, then Tame may switch tasks while the program is really
  710.          working.  You should set this number as accurately as possible.  You
  711.          may run a special TAME /CPU command and Tame will compute a
  712.          reasonable value that you may want to use based on the speed of your
  713.          CPU.
  714.  
  715.    rest  If the application is inactive, Tame will wait first polls before task
  716.          switching.  If the application is still inactive the next time Tame
  717.          checks, it will wait only rest polls before task switching.  Tame will
  718.          continue to wait only rest polls until the application again becomes
  719.          active.  This number defaults to 2.  You will normally want to set
  720.          this number low.
  721.  
  722.          You may set either of these values to -1, which indicates that Tame
  723.          should not cause a task switch based upon polling alone.  This is
  724.          effective with programs that issue the keyboard idle interrupt while
  725.          they are polling the keyboard, and will prevent Tame from switching
  726.          tasks based upon intermittent keyboard polls.
  727.  
  728. /Idle_Indicate [first rest] {POLLS}
  729.  
  730.    This is an alternate form of the previous option to specify that the values
  731.    are not to be based on the time.  Instead, Tame will cause a task switch
  732.    after first polls, even if the polls span several clock ticks.
  733.  
  734. /Idle_Indicate [poll_types]
  735.  
  736.    This option lets you specify the type of activity that Tame should check
  737.    when considering polling.  You may select any combination of the following
  738.    poll type values.
  739.  
  740.        Key       Tame should look for key polls.
  741.  
  742.        Time      Tame should look for time polls.
  743.  
  744.        PSP       Tame should look for PSP polls.
  745.          This is frequently helpful with network-aware programs.
  746.  
  747.        NONE      Tame should not look at any type of polls.
  748.  
  749. /Install  {settings}
  750.  
  751.    This is the command you will use to load the Tame TSR into memory.  It may
  752.    be removed from memory using the /Uninstall option.
  753.  
  754.    One of the standard settings may optionally be specified.  See the
  755.    /Settings command for details on available settings.
  756.  
  757. /KeyIdle [count]
  758.  
  759.    This option works well with many programs that inform DOS when they are
  760.    polling the keyboard while in an idle state.  Tame detects this idle
  761.    situation and temporarily lowers the Idle Indicate first rest option to
  762.    count.  You may set count set to -1 which tells Tame to never switch tasks
  763.    unless the application confirms that it is really idle.
  764.  
  765.    This option may be turned off by specifying /NoKeyIdle.
  766.  
  767.    NOTE: With DESQview release 2.26 and later, this option is not recommended
  768.           for tasks that spend a lot of time at the DOS prompt.  This is
  769.           because DESQview detects the fact that Tame is watching the idle
  770.           interrupt, and when at the DOS prompt, DESQview goes out of its way
  771.           to make sure the idle interrupt is called.  This wastes some
  772.           processing time unnecessarily.  This option is still very effective
  773.           inside some programs, and the problem only occurs at the DOS prompt.
  774.  
  775. /KeyWaitPoll 
  776.  
  777.    Tame should look for the program requesting a key, and  continue a task
  778.    switch until a key is pressed. This is frequently helpful in Windows and
  779.    defaults to being enabled in Windows.
  780.  
  781. /Monitor
  782.  
  783.    This option turns on the monitor that displays Tame actions.  The same
  784.    monitor displays whether you load it with the hot key or with this
  785.    command.  The status monitor appears in the upper right hand corner of your
  786.    screen, similar to the following.
  787.  
  788.       ╔════╗
  789.       ║SC/*║
  790.       ╚════╝
  791.  
  792.    The status that may appear in each of the four monitor positions indicate:
  793.  
  794.       S = System status: (?) don't know, (I)dle, (W)orking
  795.       C = Current task:  (I)dle, (W)orking, (i)dle switched, (K)ey read (B)usy
  796.       / = Spinner:  continuously turns while the program is polling
  797.       * = Task switch indicator:  throbs when Tame is causing task switches.
  798.  
  799.    The monitor may be turned off using the /NoMonitor option.
  800.  
  801.  
  802. /NoBackGround [count]
  803.  
  804.    This option can be very effective with DESQview, and will be ignored if
  805.    another multi-tasking system is being used.  When this option is specified,
  806.    Tame will patiently do a normal task switch count times when the
  807.    application is run in the background.  If no activity is detected, then it
  808.    will instruct DESQview to temporarily run this program only while it is in
  809.    the foreground.  As soon as this program is brought to the foreground, Tame
  810.    will instruct DESQview to again allow it to execute in the background.
  811.  
  812.    For example, you may have a large spreadsheet to calculate and a lot of
  813.    data to enter into a data base.  You can run the spreadsheet with the Tame
  814.    /NBG command and move it to the background.  While it is calculating, you
  815.    can be entering data in the data base.  When Tame detects that the
  816.    spreadsheet is complete, it will put that background window to sleep and
  817.    free the CPU for the foreground.  When the spreadsheet is brought to the
  818.    foreground, Tame will again activate it.
  819.  
  820.    Note that you should not use this option with programs that need to start
  821.    by themselves, such as communications programs and mail programs.
  822.  
  823.    This option may be turned off by specifying /BackGround.
  824.  
  825. /NoDVAware
  826.  
  827.    This option sets DESQview-aware programs so that they will not run with any
  828.    other multi-taskers.  The programs will run only with DESQview.
  829.  
  830. /No_Idle_Indicate [poll_types]
  831.  
  832.    One or more activities may no longer be considered to be polling.  You may
  833.    instruct Tame to no longer poll one or both of the following poll type
  834.    values.
  835.  
  836.    Key           Tame should look for key polls.
  837.  
  838.    Time          Tame should look for time polls.
  839.  
  840.  
  841. /NoKeyIdle
  842.  
  843.    Turns off the /KeyIdle option.
  844.  
  845. /NoMonitor
  846.  
  847.    Turns off the visual Monitor.
  848.  
  849. /NoTimer
  850.  
  851.    This option prevents the application from processing the timer interrupt
  852.    that is normally issued by the PC about 18.2 times per second.  This option
  853.    may disable some features of the program, and should be used with caution.
  854.    It is very useful with programs that use a lot of CPU time to process the
  855.    timer interrupt with little benefit.  For example, a program that constantly
  856.    displays the current time on the screen, but you are running the program in
  857.    the background.
  858.  
  859.    This option works by intercepting the programs request to be called by the
  860.    timer interrupt.  The program assumes it will be called on a regular basis
  861.    by the timer interrupt, but, since Tame did not pass this request on to
  862.    DOS, the program will never be called by the interrupt.
  863.  
  864.    This option may be turned off by specifying /Timer.
  865.  
  866. /No_Work_Indicate [activities]
  867.  
  868.    Define activities that Tame should not watch for to help it determine when
  869.    the program is active.  You may enter any of the following values.
  870.  
  871.       Com1       Program does not access COM1 using hardware.
  872.       Com2       Program does not access COM2 using hardware.
  873.       Com3       Program does not access COM3 using hardware.
  874.       Com4       Program does not access COM4 using hardware.
  875.       IRQn       IRQ number n should not be monitored by Tame.
  876.       SERial     Program does not access serial ports using the BIOS.
  877.       PARallel   Program does not access the printer.
  878.  
  879. /OFf
  880.  
  881.    The /OFf option will temporarily disable Tame, but leave it in memory for
  882.    later use.
  883.  
  884. /OFf [ticks]
  885.  
  886.    The /OFf ticks option will temporarily disable Tame for the number of ticks
  887.    you specify.  Tame is automatically activated at the end of that time. This
  888.    is beneficial when you need to load a program and not have Tame active
  889.    until after the program is loaded.  Note that pressing a key will cancel
  890.    this option.
  891.  
  892. /ON
  893.  
  894.    Enable Tame task switching.  Tame is on by default.
  895.  
  896. /RUN [command_line]
  897.  
  898.    Runs the command line with Tame active.  Any Tame options that are specified
  899.    must be placed before /RUN and will be in effect while running the command
  900.    line.
  901.  
  902. /SEttings settings_file
  903.  
  904.    Set Tame options to one of the standard settings.  The following settings 
  905.    may be used:
  906.  
  907.        1 = Minimum taming of the application, and maximum detection of work;
  908.            Use this level if Tame seems to slow the application.
  909.  
  910.        5 = Average taming of the application and maximum detection of work;
  911.            Use this setting if maximum taming makes the program sluggish.
  912.  
  913.        9 = Maximum taming and maximum detection of work;
  914.            Some applications may run slower with this setting.
  915.  
  916.    NOTE:  The options specified for each setting are listed in a file named
  917.           *.SET (where * is the setting name).  You are free to add your own 
  918.           settings by adding more .SET files to the Tame directory.
  919.  
  920. /Status
  921.  
  922.    Display a summary report.  The summary includes the number of task switches
  923.    that were initiated by Tame, the total number of keyboard calls that the
  924.    application made, and also a summary of the current options.
  925.  
  926. /Task_Switch [method]
  927.  
  928.    The main purpose of Tame is to switch to another task when it detects that
  929.    the application is wasting time polling the keyboard.  With DESQview,
  930.    Windows, Omniview, Topview, VM/386 and Double Dos, the native pause
  931.    function is used to switch tasks.  Since Tame does not have specific
  932.    support for other multi-taskers, you need to set the task switching method
  933.    used by your multi-tasker.  
  934.    
  935.    The following task switching methods are available.
  936.  
  937.       DesqView   Use the native DESQview task switching method.
  938.  
  939.       DoubleDos  Use the native Double DOS task switching method.
  940.  
  941.       HaLT       The Halt option specifies that Tame should execute a HLT
  942.                  instruction when polling is detected.  This instruction has
  943.                  been found to cause some multi-taskers to immediately switch
  944.                  to another task.  This is the default task switching method
  945.                  when Tame does not recognize the multi-tasker.
  946.  
  947.       Key_Read   The Key_Read option specifies that when the program polls the
  948.                  keyboard, Tame should tell a white lie and say that a key has
  949.                  been pressed.  Most applications will immediately read the key
  950.                  that Tame claimed was already pressed.  Since it really was
  951.                  not pressed, DOS will wait for a key to be pressed.  Most
  952.                  multi-taskers use this wait for a key press as a Que to switch
  953.                  tasks.
  954.  
  955.                  The Key_Read option could be the most effective task
  956.                  switching method in Tame, but it will not work with some
  957.                  applications. Specifically, it will not work with any
  958.                  applications that poll devices other than the keyboard, or
  959.                  with programs that occasionally flush the keyboard buffer. It
  960.                  is also not effective in Windows/386.
  961.  
  962.       OmniView   Use the native Omniview task switching method.  This requires
  963.                  that Omniview is set up to be Topview compatible.
  964.  
  965.       OS/2       Use the native OS/2 task switching method.  The task switch
  966.                  time may be adjusted using the /Task_Switch_Time parameter
  967.                  which defaults to 100 milliseconds (1/10 second).
  968.  
  969.       TopView    Use the native Topview task switching method.
  970.  
  971.       VM/386     Use the native VM/386 task switching method which happens to
  972.                  be the same as Halt.
  973.  
  974.       WINdows    Use the native Windows task switching method.  This is
  975.                  effective with Windows 3.x and Windows NT.  It also seems
  976.                  to work with some other multi-taskers such as OS/2.
  977.  
  978.  
  979. /Task_Switch_REPeat  [count]
  980.  
  981.    When Tame detects an idle system and switches tasks, it will normally
  982.    switch tasks once and then return control to the application.  This option
  983.    causes Tame to continue to switch tasks a specified number of times without
  984.    giving the application a chance to resume its polling ways.  The task
  985.    switch repout count will be terminated automatically by Tame if it detects
  986.    a key press or other IRQ-based work (e.g. COM port activity).
  987.  
  988. /Task_Switch_Time {timeslice}
  989.  
  990.    Some multitaskers allow releasing for a specific amount of time.  The
  991.    amount of time specified here is dependent on the multitasker in  use.  
  992.  
  993.    This option is currently supported only with OS/2.
  994.  
  995. /Timer
  996.  
  997.    Turns off the /NoTimer option.
  998.  
  999. /TINY
  1000.  
  1001.    This option will cause the small version of the resident Tame program to be
  1002.    loaded.  It is a fully operational version, except the pop-up status screen
  1003.    and pop-up monitor are not available.  If you use this option, it must
  1004.    always be the first option on the command line.
  1005.  
  1006. /Uninstall
  1007.  
  1008.    Remove the resident (TSR) portion of Tame from memory.  This is only
  1009.    necessary when you load Tame using the /Install option.
  1010.  
  1011. /Work_Indicate [activities]
  1012.  
  1013.    You may define the activities that Tame should watch for to help it
  1014.    determine when the program is active.  You may enter any combination of the
  1015.    following values, except that a maximum ot two IRQs may be monitored at
  1016.    any given time (Each COM port counts as an IRQ).
  1017.  
  1018.       Com1       Program accesses COM1 using hardware.
  1019.       Com2       Program accesses COM2 using hardware.
  1020.       Com3       Program accesses COM3 using hardware.
  1021.       Com4       Program accesses COM4 using hardware.
  1022.       IRQn       IRQ number n is activated by some hardware and should be 
  1023.                  detected by Tame.  Specify IRQ number 0 through 7.
  1024.       SERial     Program accesses serial ports using the BIOS.
  1025.       PARallel   Program accesses the printer.
  1026.       NONE       Program does none of the above.
  1027.  
  1028. /Work_Indicate [work_boost]
  1029.  
  1030.    This option sets the number of clock ticks after a work activity that TAME
  1031.    should elevate the priority of the task.
  1032.  
  1033. /Write_Options
  1034.  
  1035.    This option will write out all the current Tame parameters.  For best
  1036.    results, redirect output to a file.  When fine-tuning, you may want to
  1037.    check your current settings against the statistics on the Tame ANL report.
  1038.    The following example creates a file named TAMEOPT.DAT that contains all
  1039.    the current Tame options.
  1040.  
  1041.       TAME /WO >TAMEOPT.DAT
  1042.  
  1043.    This option works in conjunction with the @filename option.
  1044.